package main

import "fmt"

type Person struct {
	name   string
	gender int
	age    int
}

type Student struct {
	Person // 匿名字段，不要给名称
	id     int
	name   string
}

func main() {
	s := Student{Person{"mike", 'w', 12}, 11, "lucy"}
	fmt.Println("s =", s) // s = {{mike 119 12} 11 lucy}

	// 就近原则：如果没有再去结构体里面找
	s.name = "alfo"
	fmt.Println("s =", s) // s = {{mike 119 12} 11 alfo}

	// 如果想改内部的，用显示方式改
	s.Person.name = "jack"
	fmt.Println("s =", s) // s = {{jack 119 12} 11 alfo}
}
